package com.ruoyi.system.service;

import java.util.List;
import com.ruoyi.system.domain.SysAppointmentSlot;

/**
 * 医生可预约号源Service接口
 * 
 * @author ruoyi
 * @date 2025-06-09
 */
public interface ISysAppointmentSlotService 
{
    /**
     * 查询医生可预约号源
     * 
     * @param slotId 医生可预约号源主键
     * @return 医生可预约号源
     */
    public SysAppointmentSlot selectSysAppointmentSlotBySlotId(Long slotId);

    /**
     * 查询医生可预约号源列表
     * 
     * @param sysAppointmentSlot 医生可预约号源
     * @return 医生可预约号源集合
     */
    public List<SysAppointmentSlot> selectSysAppointmentSlotList(SysAppointmentSlot sysAppointmentSlot);

    /**
     * 新增医生可预约号源
     * 
     * @param sysAppointmentSlot 医生可预约号源
     * @return 结果
     */
    public int insertSysAppointmentSlot(SysAppointmentSlot sysAppointmentSlot);

    /**
     * 修改医生可预约号源
     * 
     * @param sysAppointmentSlot 医生可预约号源
     * @return 结果
     */
    public int updateSysAppointmentSlot(SysAppointmentSlot sysAppointmentSlot);

    /**
     * 批量删除医生可预约号源
     * 
     * @param slotIds 需要删除的医生可预约号源主键集合
     * @return 结果
     */
    public int deleteSysAppointmentSlotBySlotIds(Long[] slotIds);

    /**
     * 删除医生可预约号源信息
     * 
     * @param slotId 医生可预约号源主键
     * @return 结果
     */
    public int deleteSysAppointmentSlotBySlotId(Long slotId);

    /**
     * 增加医生可预约号源的已预约数量
     *
     * @param slotId 医生可预约号源主键
     * @return 结果
     */
    public int incrementBookedCount(Long slotId);
}
